﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

namespace IU.Generico
{
    public class Selector
    {
        /// <summary>
        /// 
        /// </summary>
        /// <param name="id">Id del control que llenará los datos.</param>
        /// <param name="page">Página de salida de control.</param>
        /// <param name="pageObject">Dueño de la sesión.</param>
        public static void Preparar(string id, string page, System.Web.UI.Page pageObject)
        {
            string paginas = (string)pageObject.Session[id];
            if (string.IsNullOrEmpty(paginas))
            {
                paginas = page;
            }
            else
            {
                paginas += "|" + page;
            }
            pageObject.Session[id] = paginas;
            pageObject.Session[string.Format("{0}.{1}.Var", id, page)] = "";    // Elemento seleccionado
        }

        /// <summary>
        /// Obtiene el resultado de la selección de un valor.
        /// </summary>
        /// <param name="id"></param>
        /// <param name="page"></param>
        /// <param name="pageObject"></param>
        /// <returns></returns>
        public static object ObtenerResultado(string id, string page, System.Web.UI.Page pageObject)
        {
            return pageObject.Session[string.Format("{0}.{1}.Var", id, page)];
        }

        /// <summary>
        /// Limpia el valor del resultado.
        /// </summary>
        /// <param name="id"></param>
        /// <param name="page"></param>
        /// <param name="pageObject"></param>
        /// <returns></returns>
        public static void LimpiarResultado(string id, string page, System.Web.UI.Page pageObject)
        {
            pageObject.Session[string.Format("{0}.{1}.Var", id, page)] = null;
        }
    }
}
